Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: add answers for test your understanding week 1 day 1-3 #93

Closed

Conversation

pratik151192
Copy link

@pratik151192 pratik151192 commented Aug 23, 2024

Added answers for Test your understanding week 1 for days 1-3. Let me know if you see another folder better fit for this. There are a few questions I wasn't sure about so didn't answer it, particularly the Rust specific ones.

This will need rework on the below perspectives:

  • Completeness
  • Unanswered questions: If you can briefly discuss/describe them for me, I am happy to elaborate on it.

@pratik151192 pratik151192 marked this pull request as ready for review August 23, 2024 00:40
@skyzh
Copy link
Owner

skyzh commented Dec 29, 2024

I'd rather not put a reference answer in the repo right now, but happy to review your answers :)

Copy link
Owner

@skyzh skyzh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All answers looks correct and complete, and I'm closing it for now :)

- What happens if the user adds a key larger than the target block size?
- We don't accept the write and send a `false` back to the user.

- Consider the case that the LSM engine is built on object store services (S3). How would you optimize/change the block format and parameters to make it suitable for such services?
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One other optimization is to split data blocks and meta blocks into two files so that we can inspect bloom filter / key ranges without downloading the full file.

@skyzh skyzh closed this Dec 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants